<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
		// 异常最大的特征,就是一旦出现异常,后面的代码将不会再执行
		
		// 那为了保证后面代码在出现异常之后,还能继续执行,所以就要进行异常处理
		
		// 注意 语法异常 try catch无法捕获
		
		// 异常捕获语句
		// try catch finally
		
		// a();
		
		// 手动抛出异常信息 使用 throw 关键字
		// 语法
		// try {
		// 	a();
		// 	// 可能出现问题的代码
		// 	throw "你的代码坏了!!!";
		// }
		// catch(e){
		// 	// 出现异常后的处理代码
		// 	console.log(e);
		// }
		// 
		// function test() {
		// 	console.log("我是之后的代码");
		// }
		// test();
		
		
		function sum(num1,num2){
			if(num1 == undefined || num2 == undefined){
				throw {
					errMsg: "能不能好好玩耍了，乖乖给我传参",
					errCode: 138888888888
				};
			}else{
				return num1 + num2;
			}
		}
		// sum(0);
		try{
			sum(0);
		}
		catch(e){
			console.log(e.errMsg);
		}
		// 异常捕获语句的完整形式
		try{
			// 可能出现异常的代码
			xyz();
		}
		catch(e){
			// 出现异常以后的处理代码
		}
		finally{
			console.log("我是finally中的代码");
			// 不管有没有出现异常,这里的代码都会执行
			// node.js
			// 做释放资源的操作
		}
		
    </script>
</head>
<body>

</body>
</html>